package com.sunplus.system.registration.service.impl;

import java.util.List;

import com.sunplus.system.registration.domain.PortalMouldField;
import com.sunplus.system.registration.param.MouldFieldParam;
import com.sunplus.system.registration.service.IPortalMouldFieldService;
import com.sunplus.system.registration.utils.MouldCodeUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.sunplus.system.registration.mapper.PortalMouldFieldMapper;

/**
 * 模板详情模板所需的字段信息Service业务层处理
 *
 * @author sunplus
 * @date 2021-03-25
 */
@Service
public class PortalMouldFieldServiceImpl implements IPortalMouldFieldService {
    @Autowired
    private PortalMouldFieldMapper portalMouldFieldMapper;

    /**
     * 查询模板详情模板所需的字段信息
     *
     * @param pid 模板详情模板所需的字段信息ID
     * @return 模板详情模板所需的字段信息
     */
    @Override
    public PortalMouldField selectPortalMouldFieldById(String pid) {
        return portalMouldFieldMapper.selectPortalMouldFieldById(pid);
    }

    /**
     * 查询模板详情模板所需的字段信息列表
     *
     * @param portalMouldField 模板详情模板所需的字段信息
     * @return 模板详情模板所需的字段信息
     */
    @Override
    public List<PortalMouldField> selectPortalMouldFieldList(PortalMouldField portalMouldField) {
        return portalMouldFieldMapper.selectPortalMouldFieldList(portalMouldField);
    }


    @Override
    public List<PortalMouldField> selectMarriageMouldFieldListByIdentity(MouldFieldParam mouldFieldParam) {
        String identityCode = mouldFieldParam.getOwn_identity_code() + mouldFieldParam.getPartner_identity_code();
        String mouldCode = MouldCodeUtil.getMarriageCode(identityCode);
        return portalMouldFieldMapper.selectListByMouldCode(mouldCode);
    }

    @Override
    public List<PortalMouldField> selectAdoptionMouldFieldListByIdentity(MouldFieldParam mouldFieldParam) {
        String identityCode = mouldFieldParam.getOwn_identity_code();
        String mouldCode = MouldCodeUtil.getAdoptionCode(identityCode);
        return portalMouldFieldMapper.selectListByMouldCode(mouldCode);
    }

    /**
     * 新增模板详情模板所需的字段信息
     *
     * @param portalMouldField 模板详情模板所需的字段信息
     * @return 结果
     */
    @Override
    public int insertPortalMouldField(PortalMouldField portalMouldField) {
        return portalMouldFieldMapper.insertPortalMouldField(portalMouldField);
    }

    /**
     * 修改模板详情模板所需的字段信息
     *
     * @param portalMouldField 模板详情模板所需的字段信息
     * @return 结果
     */
    @Override
    public int updatePortalMouldField(PortalMouldField portalMouldField) {
        return portalMouldFieldMapper.updatePortalMouldField(portalMouldField);
    }

    /**
     * 批量删除模板详情模板所需的字段信息
     *
     * @param pids 需要删除的模板详情模板所需的字段信息ID
     * @return 结果
     */
    @Override
    public int deletePortalMouldFieldByIds(String[] pids) {
        return portalMouldFieldMapper.deletePortalMouldFieldByIds(pids);
    }

    /**
     * 删除模板详情模板所需的字段信息信息
     *
     * @param pid 模板详情模板所需的字段信息ID
     * @return 结果
     */
    @Override
    public int deletePortalMouldFieldById(String pid) {
        return portalMouldFieldMapper.deletePortalMouldFieldById(pid);
    }
}
